package com.net.oil.push.contract;

import com.net.oil.base.IBaseModel;
import com.net.oil.push.bean.NewsDetailBean;
import com.net.oil.push.bean.TechnologySupportDetail;

/**
 * 作者：lch
 * 时间：2018/4/22 0022:下午 16:46
 * 邮箱：245850413@qq.com
 * 说明：
 */

public interface PushHandleContract {
    interface Model extends IBaseModel{

        /**
         * 根据技术支援文章id查询技术支援文章信息
         * @param id    技术支援文章id
         */
        void getTechnologySupportDetail(int id);

        /**
         * 根据新闻id查询新闻信息
         * @param id    新闻id
         */
        void getNewsDetail(int id);
    }

    interface View {

        /**
         * 获取技术支援文章成功
         * @param detail    技术支援文章
         */
        void getTechnologySupportDetailSuccess(TechnologySupportDetail detail);

        /**
         * 获取技术支援文章失败
         */
        void getTechnologySupportDetailFailed();

        /**
         * 获取新闻详情成功
         * @param newsDetailBean    新闻详情
         */
        void getNewsDetailSuccess(NewsDetailBean newsDetailBean);

        /**
         * 获取新闻详情失败
         */
        void getNewsDetailFailed();
    }

    interface Presenter {

        /**
         * 根据技术支援文章id查询技术支援文章信息
         * @param id    技术支援文章id
         */
        void getTechnologySupportDetail(int id);

        /**
         * 获取技术支援文章成功
         * @param detail    技术支援文章
         */
        void getTechnologySupportDetailSuccess(TechnologySupportDetail detail);

        /**
         * 获取技术支援文章失败
         */
        void getTechnologySupportDetailFailed();

        /**
         * 根据新闻id查询新闻信息
         * @param id    新闻id
         */
        void getNewsDetail(int id);

        /**
         * 获取新闻详情成功
         * @param newsDetailBean    新闻详情
         */
        void getNewsDetailSuccess(NewsDetailBean newsDetailBean);

        /**
         * 获取新闻详情失败
         */
        void getNewsDetailFailed();
    }
}
